import { Pipe, PipeTransform } from '@angular/core';

/**
 * 圈子状态 0 正常 1禁封 2禁言
 */
@Pipe({ name: 'circleStateStatus' })
export class CircleStateStatusPipe implements PipeTransform {
  transform(value: any, exponent?: string): any {
    if (exponent == 'text') {
      switch(value) {
        case 0:
          return '正常';
        case 1:
          return '禁用';
        case 2:
          return '禁言';
        default:
          return '-';
      }
    } else if (exponent == 'color') {
      switch(value) {
        case 0:
          return '#008000';
        case 1:
          return '#F00000';
        case 2:
          return '#888888';
        default:
          return '#888888';
      }
    }
  }
}

/**
 * 身份标识 0 正常 1内部账号 2管理员
 */
@Pipe({ name: 'identityStatus' })
export class IdentityStatusPipe extends CircleStateStatusPipe {
  transform(value: any, exponent?: any): any {
    switch(value) {
      case 0:
        return '正常';
      case 1:
        return '内部账号';
      case 2:
        return '管理员';
      default:
        return '-';
    }
  }
}

/**
 * 用户类型 1个人 2门店商户  2 B端 其他C端
 */
@Pipe({ name: 'userIdentityStatus' })
export class UserIdentityStatusPipe extends CircleStateStatusPipe {
  transform(value: any, exponent?: any): any {
    switch(value) {
      case 1:
        return '个人';
      case 2:
        return '门店商户';
      default:
        return '-';
    }
  }
}

/**
 * 状态：0-待处理、1-下架、2-无效举报、3-删除
 */
@Pipe({ name: 'reportStatus' })
export class ReportStatusPipe extends CircleStateStatusPipe {
  transform(value: any, exponent?: any): any {
    switch(value) {
      case 0:
        return '待处理';
      case 1:
        return '下架';
      case 2:
        return '无效举报';
      case 3:
        return '删除';
      default:
        return '-';
    }
  }
}

/**
 * 发布身份 0 正常 1内部账号 2管理员
 */
@Pipe({ name: 'publishIdentityStatus' })
export class PublishIdentityPipe extends CircleStateStatusPipe {
  transform(value: any, exponent?: any): any {
    switch(value) {
      case 0:
        return '普通账号';
      case 1:
        return '内部账号';
      case 2:
        return '管理员';
      default:
        return '-';
    }
  }
}

/**
 * 帖子状态 0草稿 1已发表 2已下架
 */
@Pipe({ name: 'postsTypeStatus' })
export class PostsTypeStatusPipe extends CircleStateStatusPipe {
  transform(value: any, exponent?: any): any {
    switch(value) {
      case 0:
        return '草稿';
      case 1:
        return '已发表';
      case 2:
        return '已下架';
      default:
        return '-';
    }
  }
}

/**
 * 问题类型状态 0非问题 1.问题待处理 2问题已解决 3问题跟进中 4问题已记录 5无效问题  其中已解决
 */
@Pipe({ name: 'problemTypeStatus' })
export class ProblemTypeStatusPipe extends CircleStateStatusPipe {
  transform(value: any, exponent?: any): any {
    switch(value) {
      case 0:
        return '非问题';
      case 1:
        return '问题待处理';
      case 2:
        return '问题已解决';
      case 3:
        return '问题跟进中';
      case 4:
        return '问题已记录';
      case 5:
        return '无效问题';
      default:
        return '-';
    }
  }
}
